home *** CD-ROM | disk | FTP | other *** search
/ FishMarket 1.0 / FishMarket v1.0.iso / fishies / 526-550 / disk_534 / term / international / term.doc < prev    next >
Text File  |  1992-05-06  |  71KB  |  1,440 lines

  1. ================================== term ===================================
  2. ===========================================================================
  3.              A Gift-Ware Telecommunications Program Written By
  4.          Olaf Barthel, © Copyright 1990,91 by Olaf Barthel & MXM,
  5.                            All Rights Reserved.
  6.  
  7.    No  guarantee of any kind is given that the program(s) described in this
  8. document are 100% reliable.  You are using this material on your own risk.
  9.  
  10.  
  11. =============================== Background ================================
  12. ===========================================================================
  13. This  program  is  a  product of anger and despair;  I was unable to find a
  14. telecommunications  program  to  suit  my  personal needs -- neither in the
  15. commercial area, nor in the public-domain.
  16.  
  17.    Most  programs  had  a  lot  of  extras  but  lacked  other perhaps more
  18. important,  perhaps  more  sensible  features (just to take an example:  in
  19. revision   2.20c   and   after   four   years   of   constant   development
  20. `HandShake' still  fails to use the current keymap settings and also strips
  21. the  7th bit when displaying characters - sorry Eric, that's why I've never
  22. registered!).
  23.  
  24.    I  have  hesitated  for  a long time before starting my first attempt at
  25. writing  my  very  own  telecommunications program.  When Kickstart 2.x was
  26. about  to  become  widely available I took the opportunity to create `term'
  27. always  trying  to  use  the new OS routines wherever possible.  While this
  28. started  to  be  quite  a  difficult task it also was a lot of fun (imagine
  29. Columbus  wrecking  his  fleat four times on his journey to the West Indies
  30. due  to unexpected leakages in all vessels and sudden changes in the ships'
  31. sailing manuals -- that's how I felt!).
  32.  
  33.    As  far as computer-telecommunications are concerned, Germany appears to
  34. be  a  developing  country.  This is partly due to the Deutsche Bundespost,
  35. the federal mail/phone company whose telecommunications monopoly used to be
  36. protected  by  federal  law.   Until 1989 you would risk a heavy penalty if
  37. using    a    non-registered    modem   or   telephone   instead   of   the
  38. Bundespost-supplied  hardware.   So,  if you have any complaints, or miss a
  39. few extremely important features in `term', don't boo and hiss, I am not as
  40. long in the telecomm business as you are (I have yet seen only a single DEC
  41. VT-101  from afar!).  Tell me what you need and I will try to add it in the
  42. next revision.
  43.  
  44.    This project was started at December 24 1990 and completed by January 25
  45. 1991.   I  used the following tools to create `term':  SAS/C 5.10a, WShell,
  46. CygnusEd Professional Release 2, KeyMacro & ARexx.
  47.  
  48.    My  thanks  go  to  the  following  people for their invaluable help and
  49. assistance:    Holger   Lubitz,  Peter  Fischer,  Christoph  Teuber,  Garry
  50. Glendown,  Oliver  Wagner, Jürgen Otte, Germar Morgenthaler, Matthias Zepf,
  51. Markus  Stoll,  Ralf  Thanner,  Veith  Schörgenhummer,  Michael Vaeth, Roby
  52. Leemann & AUGS, Thorsten Seidel, Till `Dill-Prince' Prinzler, Volker Ulle &
  53. the  Aquila  Sysop Team, Marc-Christian Schröer, Udo Wolt, Michael Hohmann,
  54. Henning  Hucke  and  to all those who supplied libraries & control sequence
  55. tables.
  56.  
  57.    The  xpr-libraries  were  created  by  Willy  Langeveld (ascii), Kenneth
  58. Osterberg  and  Markus  Pietz (jmodem), Stephen Walton (kermit), Jack Rouse
  59. (quickb), Marc Boucher (xmodem) and Rick Huebner (zmodem).
  60.  
  61.    The xpr-standard was created by Willy Langeveld, the Res.asm source code
  62. was  provided  by  Edward  Carrol, I borrowed a single routine (ahtoi) from
  63. Matthew  Dillon's  `DMouse'  program, the quicksort routine (QuickSort.asm)
  64. was  written  by  David Jones, the touch-tone dialing routines are based on
  65. the  article  `DTMF  - A Program for Generating Touch-Tone Signals' by Adam
  66. Levin.
  67.  
  68.    Since  time  did  not  permit  me  to translate the full original German
  69. documentation into English, I had asked the Z-Net Amiga community for help.
  70. As  a  result  this  document was translated by three different authors (in
  71. order of translation):  me, Marc Schröer and Henning Hucke.  Garry Glendown
  72. took care of the termRexx documentation -- thanks to all of you!
  73.  
  74.  
  75. ============================= The source code =============================
  76. ===========================================================================
  77. Since  there  are still only very few well-documented examples (or general
  78. programming  examples)  for  Kickstart  2.x  I  have decided to include the
  79. *full* `C' source code with the `term' distribution.
  80.    The  source code is _not_ intended for commercial use.  If you are about
  81. to  include  portions  in  commercial  programs you will need to ask me for
  82. permission.   Still you may use parts of the source code for non-commercial
  83. software development without my consent.
  84.    I  sincerely  hope  that the release of the full `term' source code will
  85. give  Kickstart 2.x a better start (I've overcome quite a lot of obstacles)
  86. so that more programs to use the new OS features will be available soon.
  87.  
  88.  
  89. ============================ The distribution =============================
  90. ===========================================================================
  91. `term' may be included with commercial programs as long as no money is made
  92. by  including  it  in  the  distribution (this also applies to inclusion in
  93. AmigaDOS  Enhancer  kits,  on  Workbench/Extras  disks  or  A3x00 hard disk
  94. drives).
  95.    You  _must_not_ make any money by distributing `term'.  A small copy fee
  96. for  data media (5$ US maximum) or the inclusion of `term' in Public-Domain
  97. collections  such  as  Fred  Fish's  Amiga  Library of Freely Distributable
  98. Software is permitted though.
  99.  
  100.  
  101. ============================== Using `term' ===============================
  102. ===========================================================================
  103. The  program  `term'  and the data received/sent by it must not be used for
  104. the following purposes:
  105.  
  106. 1) The  construction,  development,  production  or  testing  of weapons or
  107.    weapon systems of any kind.
  108.  
  109. 2) The construction, development, production or use of plants/installations
  110.    which include the processing of radioactive/fissionable material.
  111.  
  112. 3) The training of persons to deal with the abovesaid actions.
  113.  
  114.  
  115. ===================== Updates & new program revision ======================
  116. ===========================================================================
  117. Whenever  a  new  release of `term' becomes available I will try to make it
  118. known  in  the  telecommunications  networks.   To order a copy send a self
  119. addressed  envelope,  an  international  mail  reply coupon (coupon-réponse
  120. international) and a 3½" disk to the author.
  121.  
  122.  
  123. ============================ Operating `term' =============================
  124. ===========================================================================
  125. `term'  can  be  controlled  both  by  mouse  and keyboard.  With two minor
  126. exceptions  each  operation  requiring  mouse  control can also be executed
  127. using keyboard shortcuts.
  128.    The  program  can  be  started  both  from  Workbench  and  from  Shell.
  129. Kickstart  2.x  is required to run `term'.  The program will refuse to work
  130. if executed under control of Kickstart 1.3 and below!
  131.    At  least  Kickstart  2.04 (revision 37.74) and Workbench 2.04 (revision
  132. 37.33)  are  required  to  execute  `term' successfully.  Earlier developer
  133. Kickstart  revisions  or the Kickstart release installed on the older A3000
  134. models will probably not work (try it if you want -- but don't complain!).
  135.    If  called from Shell `term' will detach itself immediately allowing the
  136. Shell  window  to  be  closed  afterwards.   This  effect can be avoided if
  137. `KEEPIO' is entered in the command line (`term keepio').
  138.    Usually, running `term' twice will cause the screen of the other program
  139. to  be popped to the front instead of creating a second `term' process.  To
  140. avoid  this  effect,  enter  `DONTPOP'  as a calling parameter (e.g.  `term
  141. dontpop').   If  called from Workbench, each program will run as a separate
  142. process.
  143.  
  144.  
  145. =============================== The display ===============================
  146. ===========================================================================
  147. The  `term'  main screen always opens to the full text-overscan size (which
  148. can be set using the `Overscan' tool in the `Prefs' drawer).
  149.    At  the  bottom  of  the  screen  a  small  window  displays a few basic
  150. parameters.  These are:
  151.  
  152. Status ........ The   current  program  operating  status.   This  includes
  153.                 `Ready',  `Holding' (control-s was pressed), `Dialing' (the
  154.                 dialing  function  is  at  work),  `Upload'  (data is being
  155.                 sent),  `Download'  (data is being received), `Breaking' (a
  156.                 break  signal  is  transmitted  across the serial line) and
  157.                 `Hanging up' (connection is being cancelled).
  158.  
  159. Font .......... The  currently  active  screen  font used for text/graphics
  160.                 rendering.
  161.  
  162. Protocol ...... The currently set data transfer protocol.
  163.  
  164. Emulation ..... The currently active terminal emulation mode.
  165.  
  166. Baud Rate ..... The data transfer rate in bits per second.
  167.  
  168. Parameters .... The current serial parameters (Data bits-Parity-Stop bits).
  169.  
  170. Time .......... The current time of day.
  171.  
  172. Online ........ The  time  elapsed  after  a  connection  was  successfully
  173.                 established.   This  counter will be stopped as soon as the
  174.                 connection  is cancelled (e.g.  by hanging up) and is reset
  175.                 to 00:00:00 as soon as a new connection is made.
  176.                 
  177.    The  screen itself is opened as a public screen (called `TERM') which is
  178. available  to  other  programs for their purposes.  If more than one `term'
  179. process  is  running,  the  public screen name will change according to the
  180. number  of  the program (i.e.  the first `term' to be started will call the
  181. scren  `TERM',  the second one will call it `TERM1', the third one `TERM2',
  182. etc.).   The  screen  title  bar  will  also display the name of the public
  183. screen.
  184.  
  185.    Cut  &  paste functions are available on the main screen.  Use the mouse
  186. to  point  to  the  first character you wish to send to the clipboard, hold
  187. down  the  (left)  select  button, move the mouse to the last character you
  188. wish  to  cut  and release the button.  The characters you have just marked
  189. will  have  been  transferred  to  the  clipboard,  use the key combination
  190. Amiga+V  to  paste the contents of the clipboard and to feed them back into
  191. the input stream. Holding down the control key while clicking on a
  192. character will feed the single character into the input stream, it will not
  193. be buffered in the clipboard. Hold down any shift key to have the contents
  194. of the clipboard fed into the input stream right after the mouse button is
  195. released, a <return> will follow the data.
  196.  
  197.    In standard string editing fields a solution had to be found to preserve
  198. the  line editing functions while still supporting menu shortcuts.  To undo
  199. any  changes  made  press  Amiga+Q, to clear the string editing field press
  200. Amiga+X.   Menus  associated  with  the  shortcuts  Amiga+Q/X are called by
  201. holding  down  any shift key along with the Amiga keys (i.e.  Shift+Amiga+Q
  202. will select the `Quit' menu item if available).
  203.  
  204.  
  205. ================================ The menus ================================
  206. ===========================================================================
  207. For  each  requester  and  input window there exists a set of menu items to
  208. execute  the  commands associated with the buttons, dials and gauges in the
  209. requester/window.   Press  to  right  mouse  button  to  have a look at the
  210. commands and their shortcuts.
  211.    The following text is to describe the menu items available in the `term'
  212. main menu.
  213.  
  214. 1. Project
  215. ----------
  216. This menu contains functions to load and to save program configurations and
  217. to quit the program.
  218.  
  219. Open Preferences............... Loads the program configuration from a file
  220.                                 to be selected.
  221.  
  222. Save Preferences............... Saves  the  current  program  configuration
  223.                                 under  the  configuration  file  name  last
  224.                                 entered.
  225.  
  226. Save Preferences As............ Saves  the current program configuration to
  227.                                 a file to be selected.
  228.  
  229. Print Screen................... Sends  the  current  contents of the `term'
  230.                                 screen  to  the  printer.   This  is  not a
  231.                                 graphics    hardcopy,    only   the   ASCII
  232.                                 characters are printed.
  233.  
  234. About.......................... Shows some information on the program.
  235.  
  236. Quit........................... Quits   the   program   after   asking  for
  237.                                 confirmation.
  238.  
  239.    After  selecting the `Quit' menu item the program may take a few seconds
  240. to exit since the contents of the `log book' are freed first.
  241.  
  242. 2. Utilities
  243. ------------
  244. This  menu  contains  functions  which  are to make your life a bit easier.
  245. AmigaDOS  commands  as well as ARexx script files may be started from here.
  246. As  a  special  gift for `Snap' users, the contents of the clipboard may be
  247. fed into the input stream.
  248.  
  249. Set Console Window............. Whenever   an   AmigaDOS/ARexx  command  is
  250.                                 executed  an output window is opened.  This
  251.                                 menu   item   will  bring  up  a  requester
  252.                                 allowing  you to edit the size and position
  253.                                 of  the  window  to be opened (consult your
  254.                                 AmigaDOS  manual  for  a description of the
  255.                                 window  position  string).   If  you do not
  256.                                 want  the  window  to  appear, simply enter
  257.                                 `NIL:'.
  258.  
  259. Execute AmigaDOS Command....... Enter  the  command you want to execute and
  260.                                 its command line arguments here.
  261.  
  262. Execute ARexx Command.......... This  function  calls  the  ARexx server to
  263.                                 execute  a script file.  If the first input
  264.                                 character  is  a  `  or " the input will be
  265.                                 considered  as  a  small program in a line.
  266.                                 Note   that   this  function  will  not  be
  267.                                 available   if   the   ARexx  server  isn't
  268.                                 running.
  269.                                    The   ARexx  command  set  supported  by
  270.                                 `term'    is    described   in   the   file
  271.                                 `termRexx.doc'.
  272.  
  273. Edit File...................... Invokes the currently selected (see `Paths'
  274.                                 preferences  menu  below)  text editor on a
  275.                                 file to be selected using a file requester.
  276.                                    `term'  will  block  and  wait until the
  277.                                 editor has returned.
  278.  
  279. Paste Clipboard Contents....... The  current contents of the clipboard will
  280.                                 be  fed  into  the  input stream (max.  255
  281.                                 characters).   Use the `log book' screen to
  282.                                 cut strings and characters to the clipboard
  283.                                 (`Snap' may also be used for this purpose).
  284.  
  285. Packet Window.................. Opens/closes  an  input  window  in which a
  286.                                 single line of characters to be transferred
  287.                                 across  the  serial  line  can  be entered.
  288.                                 More  on  this  feature  is explained under
  289.                                 `The packet window' below.
  290.  
  291.    The  menu  functions  `Execute  AmigaDOS  Command'  and  `Execute  ARexx
  292. Command'  allow  you  to  select  the  name  of  the file to be executed by
  293. clicking on the `Load File' gadget.
  294.  
  295. 3. Capture & Buffer
  296. -------------------
  297. The menu items in this menu offer functions to load/save, to display and to
  298. capture incoming text/graphics data.
  299.  
  300. Clear Buffer................... Clears the contents of the `log book'.  Any
  301.                                 text  will  be  discarded  and  _cannot_ be
  302.                                 recovered.   Capture files are not affected
  303.                                 by this command.
  304.  
  305. Display Buffer................. Opens the `log book' screen.
  306.  
  307. Close Buffer................... Closes  the  `log book' screen but does not
  308.                                 free the contents.
  309.  
  310. Load Buffer.................... Loads the contents of the `log book' from a
  311.                                 file.  If there are still text lines in the
  312.                                 `log  book'  a requester will appear giving
  313.                                 you  the  choice  to  discard the old data,
  314.                                 append  the  new  data,  or  to  cancel the
  315.                                 action.
  316.  
  317. Save Buffer.................... Saves  the  contents of the `log book' to a
  318.                                 file.   You will be notified if the file to
  319.                                 save to exists already (you may discard the
  320.                                 old file, append the new data or cancel the
  321.                                 action).
  322.  
  323. Capture To Disk................ Toggles  file capture, options are the same
  324.                                 as with `Save Buffer'.
  325.  
  326. Capture To Printer............. Toggles printer capture.
  327.  
  328.    More  detailed information on the `log book' will be given later in this
  329. document.
  330.  
  331. 4. Transfer
  332. -----------
  333. Since  data  transfer cannot always be done by keyboard and console, `term'
  334. supports  a number of transfer protocols implemented as xpr-libraries.  The
  335. `term'    distribution    includes   xprascii.library,   xprjmodem.library,
  336. xprkermit.library,       xprquickb.library,      xprxmodem.library      and
  337. xprzmodem.library.
  338.  
  339. Upload Text.................... Sends a file/files to the  remote  receiver
  340.                                 using  the  current  transfer protocol.  If
  341.                                 possible   this   command  will  `ask'  the
  342.                                 transfer  protocol  to transmit the file(s)
  343.                                 in  text  mode  (whatever that means) which
  344.                                 may  include  CR/LF  substitution and other
  345.                                 gimmicks.       Consult     the     library
  346.                                 documentation to find out if your favourite
  347.                                 transfer library supports text mode.
  348.  
  349. Download Text.................. Request  a  file/files  using  the  current
  350.                                 transfer  protocol.  Refer to `Upload Text'
  351.                                 for features/options of this mode.
  352.  
  353. Send ASCII..................... This    is   a   pure   ASCII-file   upload
  354.                                 implemented  through  xprascii.library.  It
  355.                                 was  added  to  allow  poor BBS programs to
  356.                                 receive   text  files  (especially  Paragon
  357.                                 doesn't  seem  to  like  ZModem  text  file
  358.                                 upload).
  359.  
  360. Receive ASCII.................. This   is   a   pure   ASCII-file  download
  361.                                 implemented    through    xprascii.library.
  362.                                 Refer  to `Send ASCII' for features/options
  363.                                 of this mode.
  364.  
  365. Upload File(s)................. Send  a  file/files  to the remote receiver
  366.                                 using  the current transfer protocol.  True
  367.                                 batch  upload  is  supported  both  through
  368.                                 wildcard  expressions  ("#?.txt"  will send
  369.                                 all  files  whose names end with `.txt') or
  370.                                 through  multiple  selection (hold down the
  371.                                 shift  key and click the names of the files
  372.                                 you   wish  to  transmit).   Refer  to  the
  373.                                 documentation  of  your  favourite transfer
  374.                                 library  to find out if batch file transfer
  375.                                 is supported.
  376.  
  377. Download File(s)............... Receive  a  file/files  using  the  current
  378.                                 transfer  protocol.   If  the protocol does
  379.                                 not support batch download you are required
  380.                                 to  enter  the  name  of  the  file  to  be
  381.                                 received.   Files  which remain empty after
  382.                                 the transfer are deleted automatically.
  383.  
  384. Transfer Options............... The  transfer  options  can be changed with
  385.                                 this  command.  If possible a control panel
  386.                                 will  pop up which allows you to change the
  387.                                 current  parameters  by mouse/keyboard.  If
  388.                                 the  selected  transfer  protocol  does not
  389.                                 provide these option hooks, a simple string
  390.                                 requester  will  prompt for input.  Consult
  391.                                 the   documentation   of   your   favourite
  392.                                 transfer protocol for legal options and the
  393.                                 values to which they can be set.
  394.  
  395. Transfer Protocol.............. This  command  allows  you  to  specify the
  396.                                 transfer  protocol  library  to be employed
  397.                                 for up-/downloads.
  398.  
  399.    The  transfer  routines  open an information window in which a number of
  400. transfer  parameters are displayed.  Additionally, the file transfer can be
  401. aborted  by  clicking  either  of  two buttons (`Abort Entire Transfer' and
  402. `Skip  Current  File').   Note:   for  most transfer protocols both buttons
  403. (abort  and  skip)  have  the  same  effect.   Consult the documentation if
  404. different  levels  of  abort  are  supported  by  your  favourite  transfer
  405. protocol.
  406.    The following information is displayed in the transfer window:
  407.  
  408. Protocol............... The   name   of  the  transfer  protocol  currently
  409.                         running.
  410.  
  411. File................... The name of the file being transferred.
  412. Size................... If available, the size of the file.
  413.  
  414. Bytes Transferred...... Number of bytes transferred yet.
  415. Blocks Transferred..... Number of data blocks transferred yet.
  416. Block Check Type....... The  method employed to verify the integrity of the
  417.                         data  blocks  being  transferred (this usually is a
  418.                         form of cyclic redundancy checking).
  419.                         
  420. Block Size............. Size of a data block in bytes.
  421.  
  422. Estimated Time......... The time the transfer protocol expects the transfer
  423.                         will take.
  424. Elapsed Time........... The time elapsed during transfer.
  425.  
  426. Message................ A message of the transfer protocol addressed to the
  427.                         user.
  428. Last Error............. A short description of the last error which occured
  429.                         during file transfer.
  430.  
  431. Number Of Errors....... The number of errors occured during file transfer.
  432.  
  433. Number Of Timeouts..... The   number   of   timeouts  occured  during  file
  434.                         transfer.
  435.  
  436. Packet Type............ A short description of the data block type employed
  437.                         for data transfer.
  438. Packet Delay........... The delay between two packets being sent.
  439. Characters/Second...... The  effective  transfer  speed  in  characters per
  440.                         second.
  441. Character Delay........ The delay between two character being sent.
  442.  
  443.    `term'  scans  the incoming data stream for the ZModem inquire sequence.
  444. If  the  ZModem  protocol  is  selected  and  `term' notices the approriate
  445. sequence  it  will  pop  a requester asking you for the type of transfer to
  446. initiate:  either `Text mode' or `Binary mode' may be selected.
  447.    When  files have been received, `term' will take a look at the data.  If
  448. the  files  do  not  contain any data they will be discarded.  In the other
  449. case  `term' will read the first 400 bytes and try to determine the type of
  450. the file (such as AmigaDOS executable, Workbench icon, LhArc archive, Zoom!
  451. archive  or  plain  ASCII text).  If successfully identified, the file will
  452. receive  a  file  comment describing its type (to view the comment, use the
  453. Shell  `List'  command,  or select the icon of the file and cast the magick
  454. Workbench  spell  of  `Information...'  on  it).  `term' currently knows 45
  455. different file types.
  456.  
  457. 5. Modem
  458. --------
  459. The  commands  in  this  menu deal with controlling the serial line and the
  460. modem.
  461.  
  462. Phonebook...................... The  phonebook  is one of the most powerful
  463.                                 and complex functions of `term' and will be
  464.                                 described later in this document.
  465.  
  466. Dial........................... To  dial  a single phone number select this
  467.                                 menu  item.   The phone number entered will
  468.                                 be passed to the dialing routine.
  469.  
  470. Redial......................... Dialing  list  entries  the dialing routine
  471.                                 was unable to establish a connection to are
  472.                                 again passed to the dialer.
  473.  
  474. Play Number.................... Outputs  a  telephone  number using touch-tone dial
  475.                                 coding on the Amiga audio hardware.
  476.  
  477. Send Break..................... Sends  a  `break'  signal across the serial
  478.                                 line.
  479.  
  480. Hang Up........................ Tells the modem to hang up the serial line.
  481.  
  482. Release Serial Device.......... The  serial  driver  is  released for other
  483.                                 programs  to  use  it.   A  requester  will
  484.                                 appear  which  allows  you  to  reopen  the
  485.                                 serial driver or to quit `term'.
  486.                                    If  the  serial driver has been released
  487.                                 by  the  ARexx  interface  and has not been
  488.                                 reopened yet, this menu item will do it.
  489.                                 
  490. 6. Display
  491. ----------
  492. The  items  in  this menu deal with the `term' main screen and the terminal
  493. emulation.
  494.  
  495. Reset Styles................... Resets   all   character  style  attributes
  496.                                 (bold, blinking, inverse video, underlined,
  497.                                 etc.)  and  sets  the  text  colour  to the
  498.                                 default pen.
  499.  
  500. Clear Screen................... Clears  the  whole  `term' screen and moves
  501.                                 the cursor to the top left home position.
  502.  
  503. Save Screen (IFF-ILBM)......... Saves  the  contents  of  the  `term'  main
  504.                                 screen to a file.  The resulting image file
  505.                                 can  be  read  by  any  program  to support
  506.                                 IFF-ILBM images.
  507.  
  508. Save Screen (ASCII)............ Saves the current contents of the screen to
  509.                                 a file; this does not include any graphics,
  510.                                 only the ASCII characters are saved.
  511.  
  512.  
  513. 7. Preferences
  514. --------------
  515. `term' is configured using the `Preferences' menu.  The following text will
  516. describe the functions associated with each menu item:
  517.  
  518. a) Serial Preferences
  519. ---------------------
  520. This is where the serial parameters may be changed.
  521.  
  522. Baud Rate.............. Transfer speed in bits per second.
  523.  
  524. Bits/Char.............. Number of bits per transferred character (7 / 8).
  525.  
  526. Parity................. Serial parity (none, odd, even, mark, space).
  527.  
  528. Stop Bits.............. Number of stop bits (1 / 2).
  529.  
  530. Handshaking............ Serial handshaking mode (XON/XOFF, RTS/CTS, none).
  531.  
  532. Duplex................. Determines  whether  characters  are echoed back to
  533.                         the  terminal  screen  or  not  (full, half = local
  534.                         echo).
  535.  
  536. High-Speed Mode........ Activates a special mode of the serial driver which
  537.                         is  to  skip  a  couple of internal parity and stop
  538.                         bits  checks  resulting  in  higher data throughput
  539.                         rate.   Note  that  enabling this feature will only
  540.                         make  sense  if  used  on  two  directly  connected
  541.                         computers.
  542.  
  543. Break Length........... Length of the break signal given in microseconds.
  544.  
  545. Serial Device.......... The name of the serial driver to be used by `term'.
  546.                         This  is  usually  `serial.device' (`modem?.device'
  547.                         for  the  internal Supra modem, `sxbios.device' for
  548.                         ASDG's serial IO card).
  549.  
  550. Device Unit Number..... The   device  unit  number  of  the  serial  driver
  551.                         selected  above.   This usually left 0 but can also
  552.                         be used to address multiple serial IO ports.
  553.  
  554. Use.................... Accept the current settings.
  555.  
  556. Cancel................. Dont' use the current settings.
  557.  
  558.    Most  modems  will not recognize a sudden change in the baud rate.  Type
  559. `AT<RETURN>' to make the change known.
  560.  
  561. b) Modem Preferences
  562. --------------------
  563. This  is  where  modem  control  strings  and  other related parameters are
  564. configured.
  565.  
  566. Modem Init String...... The  string  to  send to the modem after successful
  567.                         program  initialization.   This  string is optional
  568.                         and does not need to be entered.
  569.                            The  dialing routine will use the initialization
  570.                         string entered here before dialing a phone number.
  571.  
  572. Modem Exit String...... The  string  to be sent to the modem shortly before
  573.                         the  program  terminates.  Just like the modem init
  574.                         string this string is optional and does not need to
  575.                         be entered.
  576.                            The  dialing routine will use the initialization
  577.                         string   entered   here  before  dialing  the  next
  578.                         telephone number.
  579.  
  580. Modem Hangup String.... The  string  to  be sent to the modem when asked to
  581.                         hang  up the line.  This string is not optional, it
  582.                         has to be present for the program to work properly.
  583.  
  584. Dial Prefix............ The  string  to  be  used  to  prefix  each dialing
  585.                         command.   This  is  usually a variant of `ATDP' or
  586.                         `ATTD'.
  587.  
  588. Redial Delay........... The  time  to  wait after walking through the whole
  589.                         dialing   list   without   making   any  successful
  590.                         connection before another attempt is started.
  591.  
  592. Number Of Dial Retries. The  number  of  times the dialer walks through the
  593.                         dialing list trying to make a successful connection
  594.                         before giving up.
  595.  
  596. Dial Timeout........... The time to wait for a successful connection during
  597.                         dialing.   After  this time has elapsed, the dialer
  598.                         will skip to the next entry in the list.
  599.  
  600. Connect Auto-Capture... If  enabled  will automatically open a capture file
  601.                         after  successfully making a connection.  Any other
  602.                         already  open  capture  file  will be closed before
  603.                         proceeding.
  604.  
  605. Connect Auto-Baud...... Most  modems  echo  the  baud  rate upon successful
  606.                         connection.  If enabled  the baud rate will be read
  607.                         and set for the serial driver.
  608.  
  609. Log Actions............ If  enabled  will  write a protocol of each program
  610.                         action (uploads, downloads, dial attempts, etc.) to
  611.                         a  file.  Each action is listed along with time and
  612.                         date.    Carrier-lost-events  will  also  note  the
  613.                         approximate cost of the call.
  614.  
  615. No Carrier String...... The  string  the modem emits if the data carrier is
  616.                         lost.   The  program  uses  this  to  determine the
  617.                         length  of  the connection and to calculate the how
  618.                         much the user is to pay for it.
  619.  
  620. Connect String......... The  string  the  modem  emits  after  detecting  a
  621.                         carrier   signal.    `term'   uses  this  input  to
  622.                         determine   successful   telephone  connection,  to
  623.                         reconfigure itself and to start the online timer.
  624.  
  625. Voice String........... The  string  `term'  is  expected to receive if the
  626.                         modem  detects  a  voice call.  If in dialing mode,
  627.                         `term'  will  abort  the process.  The user will in
  628.                         any case be notified of the event.
  629.  
  630. Ring String............ The  string  the modem emits if it receives a call,
  631.                         same effects as with the `Voice String'.
  632.  
  633. Busy String............ The  string  the  modem returns if the number which
  634.                         has just been dialed is busy.
  635.  
  636. Use.................... Use the current settings.
  637.  
  638. Cancel................. Keep original settings.
  639.  
  640. c) Screen Preferences
  641. ---------------------
  642. This  menu-item will bring up a window to change all parameters of the main
  643. screen.
  644.  
  645. Display Modes........... All graphic-modes available for the main screen are
  646.                          displayed  here.   If  you  wish  to use the 'Super
  647.                          Hires', the 'Productivity' mode or the A2024-modes,
  648.                          you  will  have  to  put up with some restrictions:
  649.                          there  are  only screens with a depth of two (Amiga
  650.                          colourmodes)and   if   in   A2024-mode,   different
  651.                          resolutions  cannot  be  mixed  with each other any
  652.                          longer.
  653.                            Annotation:   the A2024-modes should only be used
  654.                          in   connection   with   an   A2024/Hedley-monitor.
  655.                          Otherwise  the  screen may 'crash' and working with
  656.                          'term' is not possible any longer.
  657.  
  658. Edit Screen Palette..... These  gadgets  are  used to select a colour of the
  659.                          screen palette that is to to be changed.
  660.  
  661. Red/Green/Blue.......... These  proportional-gadgets  are used to modify the
  662.                          portions of red, green or blue.
  663.  
  664. Make Screen Public...... As  dealt  with  before,  the  'term' mainscreen is
  665.                          opened  as 'public'.  With this gadget the user may
  666.                          define if other applications are allowed to open up
  667.                          their windows on the 'term' screen.
  668.  
  669. 'Shanghai' Windows...... This  item,  that is only displayed if 'Make Screen
  670.                          Public'  has  been  selected, is closely related to
  671.                          the  function  before.  If active, all windows that
  672.                          will  normally be displayed on the Workbench screen
  673.                          will open on the `term' main screen.
  674.  
  675. Use..................... Use the current preferences.
  676.  
  677. Cancel.................. Keep the old preferences.
  678.  
  679.   It  has  to  be  remarked  that all the 'new' display-modes (Super-Hires,
  680. Productivity,  etc.)  restrict  the  number  of colours.  Instead of 16-bit
  681. portions for red, green and blue, only 2-bit portions are used, which leads
  682. to  a  maximum width of the palette of at all 64 (4 × 4 × 4) colours.  This
  683. is no 'feature' of 'term' but a hardware restriction.
  684.  
  685. d) Terminal Preferences
  686. -----------------------
  687. All  settings that may be done here determine the behaviour of the terminal
  688. itself, i.e.  how command sequences are interpreted and displayed.
  689.  
  690. Capture Filter......... If  selected,  command  sequences  are filtered out
  691.                         before the incoming characters are captured to disk
  692.                         or printer.
  693.  
  694. Destructive BS......... Determines  if  the  'Backspace'  code,  which will
  695.                         delete  the  character  left  from the cursor, only
  696.                         moves  the  cursor  to  the  left  or  removes  the
  697.                         character from the screen.
  698.  
  699. Audible Bell........... If  this  function has been activated, every 'Bell'
  700.                         code  will  cause  'term'  to  generate  a  audible
  701.                         signal.
  702.  
  703.  
  704. Visible Bell........... If  the  function  has been activated, every 'Bell'
  705.                         code will cause 'term' to generate a visible signal
  706.                         (screen flash).
  707.  
  708. Force 80 x 24.......... Because  of  a higher horizontal resolution or as a
  709.                         result  of  the  current overscan-preferences there
  710.                         often  is  space left at the right margin, which is
  711.                         automatically  used  by  'term'.  Some BBS-programs
  712.                         are  dependent  on  a  fixed  number of columns and
  713.                         lines  (80 × 24) so that a change in the resolution
  714.                         leads  to  a disturbance in the display.  With this
  715.                         gadget  the user can force an 80 × 24 columns/lines
  716.                         display (the actual resolution of the screen is not
  717.                         changed,  'term'  only  performes a linefeed at the
  718.                         80.  horizontal position).
  719.  
  720. Stop Blinking.......... If selected the VT100-blink option is suppressed.
  721.  
  722. Send CR................ This gadget determines the sequence that is sent
  723.                         to the remote if a carriage-return is issued.
  724.  
  725.                         As CR    = without any change.
  726.                         As CR+LF = carriage-return and linefeed
  727.             Ignore   = suppress any carriage-return
  728.  
  729. Send LF................ This gadget determines the sequence that is sent
  730.                         to the remote if a linefeed is issued.
  731.  
  732.             As LF    = without any change.
  733.             As LF+CR = linefeed and carriage-return.
  734.             Ignore   = suppress any linefeed.
  735.  
  736. Colour................. This gadget determines the colour-mode the terminal
  737.                         emulation  is going to use.  Until now, three modes
  738.                         have been implemented:
  739.  
  740.                         - Amiga
  741.  
  742.                           Four colours and blinking.
  743.  
  744.                         - 8 Colours (Blink)
  745.  
  746.                           Eight colours and blinking.
  747.  
  748.             - 16 Colours
  749.  
  750.               Sixteen colours, as the EGA-palette.
  751.  
  752.             - Mono:
  753.               Monochrome, two colours.
  754.  
  755. Emulation.............. At  this  point  the  user  may select the terminal
  756.                         emulation.  First there is the a solid VT100/VT220/
  757.                         ANSI  emulation  that  supports all common command-
  758.                         sequences,  then  there  is  a  so  called 'Atomic'
  759.                         emulation  which  does  only support the very basic
  760.                         command-sequences  (CR,  LF,  Backspace, etc.), all
  761.                         VT100-  and  ANSI-command-sequences are suppressed,
  762.                         and,  last  but  not least, a 'TTY'-emulation which
  763.                         does   not   suppress   all  command-sequences,  as
  764.                         'Atomic'  does,  but  rather  echoes  them  to  the
  765.                         screen.
  766.  
  767. Font................... 'term'  makes  use of two fonts to display text and
  768.                         graphics.    'Topaz'   is   the   system-integrated
  769.                         standard  font,  'IBM'  is  a  font  similar to the
  770.                         Standard   IBM   PC    font   which  also  contains
  771.                         graphics-symbols.   If 'IBM' is selected input from
  772.                         the  console  is  automatically translated into the
  773.                         corresponding 'IBM' characters.
  774.  
  775.                         * IBM and IBM-PC  are  traderunes  of  the  Frobozz
  776.                           non-magic International Business Machines, Inc.
  777.  
  778. Use.................... Use the current preferences.
  779.  
  780. Cancel................. Keep the old preferences.
  781.  
  782.    The  built-in  VT100-emulation  supports  all commands that have any use
  783. with  'term'.   Not implemented are commands that control the printer (this
  784. should  be  left to the user), initiate internal terminal-tests, change the
  785. LEDs or were very complicated to implement.
  786.    Although  only hard-core VT100-users may recognize this:  the backspace-
  787. and  delete-keys  were  not  swapped,  characters with ASCII-code > 127 are
  788. displayed either and are not stripped (real 8 bits instead of 7 bits).
  789.  
  790.    The  VT100-emulation  also  supports  all commands of the VT220-terminal
  791. (thanks  to  Germar  Morgenthaler  who was able to get hold of the original
  792. documentation of the DEC VT220 console!), although there were only a few to
  793. be added.  Acctually I had built in a lot commands that were supported only
  794. by VT220.  Commands to swap between national keymaps (the DEC Multinational
  795. Character  Set  is  accessed  at _all_ times) and commands that control the
  796. printer are not supported.  These commands are stripped.
  797.  
  798. e) Startup Macro
  799. ----------------
  800. At  the  beginning  of every session with 'term' and after a connection has
  801. been  established  by  the  dialing  routine a command-sequence is executed
  802. which  may  execute  command-files  or perform a automatical 'login'.  This
  803. command-sequence can be edited by selecting this menu-item.
  804.  
  805. f) Paths
  806. --------
  807. In this part of the preferences all paths, which 'term' uses to save or load
  808. any data, can be determined.
  809.  
  810. Config. Storage Dir.... The  directory  that will contain all configuration
  811.                         files  (Phonebook,  Makrokeys,  etc.).  The default
  812.                         configuration file is called 'Preferences.term' and
  813.                         will  be  searched  in  the  path  defined  by  the
  814.                         enviroment   variable   'TERMPATH'   (see   end  of
  815.                         document).
  816.  
  817. xxx Up/Downloadpath.... The directories in which the functions contained in
  818.                         the 'Transfer' menu will search and create files.
  819.  
  820. Capture Path........... This  gadgets  contain  the  path  in which the the
  821.                         capture   files   will   be   created  if  'Connect
  822.                         Auto-Capture' is enabled.
  823.  
  824. Log File............... The  name  of  the file in which the information on
  825.                         the  actions  executed  by 'term' will be logged if
  826.                         'Log Actions' is enabled.
  827.  
  828. Text Editor............ Contains  the  name  and  search path of the editor
  829.                         used by 'Edit File' in the Utilities menu.
  830.  
  831. Terminal 'Beep' Sound.. The  name of the IFF-sound-file that will be played
  832.                         if  a  BEL-signal  is  detected.  This file may for
  833.                         technical reasons not be larger than 102400 bytes.
  834.  
  835. Use.................... Use the current preferences.
  836.  
  837. Cancel................. Keep the old preferences.
  838.  
  839.    If  the  gadget  'Select' is clicked, the path or filename beside can be
  840. selected by the file-requester.
  841.  
  842. g) Emulation
  843. ------------
  844. The  gadgets  found here allow you to change the internal parameters of the
  845. selected emulation.
  846.  
  847. Smooth Scrolling....... If active, the each carriage-return code will cause
  848.                         the contents of the screen to scroll up smoothly.
  849.  
  850. Wrap Characters........ This  function  activates  the automatical carriage
  851.                         return  function  which is triggered as soon as the
  852.                         cursor  crosses  the right screen margin.  To avoid
  853.                         unpleasant  side-effects,  this  gadget  should  be
  854.                         activated all the time.
  855.  
  856. Wrap Cursor............ According  to  the  VT100-specification  the cursor
  857.                         movements  have to stop at the edges of the screen.
  858.                         In  spite  of  this  the  cursor  may  leave  these
  859.                         borders, especially in ANSI-mode, and may appear at
  860.                         the   other   side  of  the  screen.   This  gadget
  861.                         activates a more 'tolerant' mode.
  862.  
  863. Insert Mode............ Normally,  'term'  is in overwrite-mode (characters
  864.                         entered  overwrite the contents of the screen).  If
  865.                         this  gadget  is  activated,  typed  characters are
  866.                         inserted by pushing all the characters right of the
  867.                         cursor towards the right margin.
  868.                           Note:   the insert-mode does only work for lines.
  869.                         If  characters  are  pushed  out of the screen they
  870.                         cannot be restored.
  871.  
  872. New Line Mode.......... This  gadget activates a special mode in which some
  873.                         VT100-control-sequences  cause  'term' to perform a
  874.                         linefeed  instead  of  clearing the screen or other
  875.                         serious changes of the contents of the screen.
  876.  
  877. Numeric Keypad......... If  this  mode is activated the keys of the numeric
  878.                         keypad  transmit  a  command-sequence  instead of a
  879.                         number.    If   the  remote  computer  needs  these
  880.                         sequences,  this  mode - applications mode - can be
  881.                         activated with this gadget.
  882.  
  883. Cursor Keys............ If  this  mode is active the cursor-keys transmit a
  884.                         command-sequence  instead of a cursor-move.  If the
  885.                         remote  computer needs these sequences, this mode -
  886.                         applications  mode  -  can  be  activated with this
  887.                         gadget.
  888.  
  889. Font Scale............. VT-100  offers four different sizes of fonts.  They
  890.                         can be selected with this gadget:
  891.  
  892.                         - Normal
  893.  
  894.                           The normal height of the font.
  895.  
  896.                         - Double Height (Top)
  897.  
  898.                           Double height of font, only the upper part
  899.                           of the character is displayed.
  900.  
  901.                         - Double Height (Bottom)
  902.  
  903.                           Double height of font, only the lower part
  904.                           of the character is displayed.
  905.  
  906.                         - Double Width
  907.  
  908.                           Double width of font.
  909.  
  910.                         - Half Width
  911.  
  912.                           Half width of font.
  913.  
  914. Use.................... Use the current preferences.
  915.  
  916. Cancel................. Keep the old preferences.
  917.  
  918.  
  919.                       Now for the global preferences:
  920.  
  921.  
  922. a) Macro Preferences
  923. --------------------
  924. This  menu is used to set user definable strings for all ten function keys.
  925. All strings are considered command sequences, a topic which will be covered
  926. later in this document.
  927.  
  928. Qualifier............. All  in all 40 Keys may be covered with user defined
  929.                        command  sequences.   As the Amiga keyboard only has
  930.                        ten  function-keys  this gadget switches between the
  931.                        modifier   keys  (shift,  control,  alt)  which,  if
  932.                        pressed  in  addition  which  a  function  key, will
  933.                        execute one of the 40 command sequences.
  934.  
  935. Load.................. Load the macro-keys from a file.
  936.  
  937. Save.................. Save the macro-keys to a file.
  938.  
  939. Use................... Use the current preferences.
  940.  
  941. Cancel................ Keep the old preferences.
  942.  
  943.    As   the   definition  of  the  function  keys  with  command  sequences
  944. contradicts  the  standard  definition  of  the  four  functions  keys of a
  945. VT-100-terminal,  the  keys  F1-F4,  which  may be executed by pressing the
  946. shift key and the approriate function-key simultaneously, are mapped to the
  947. standard  sequences  for  function-keys.  The user may - of course - change
  948. these settings.
  949.  
  950. b) Hotkeys
  951. ----------
  952. This  is  where  the  key  sequences used to arrange screens and to execute
  953. special functions are to be configured.
  954.  
  955. term Screen To Front.. The keys to press to bring the `term' screen to the
  956.                        front.
  957.  
  958. Buffer Screen To Front The  keys  to  press to bring the screen of the log
  959.                        book  process to the front (note:  if the screen is
  960.                        not   already   open,   pressing  these  keys  will
  961.                        accomplish nothing).
  962.  
  963. Skip Dial Entry....... As  an  alternative  to the `Skip' gadget, pressing
  964.                        these keys will skip a dialing entry if the dialing
  965.                        function is currently active.
  966.  
  967. Commodity Priority.... The commodity priority to assign this task to.  You
  968.                        may want to change this value if you have more than
  969.                        one   program  running  which  uses  the  same  key
  970.                        sequences  as  `term'.  The program with the higher
  971.                        commodity  priority  will  receive  the  keystrokes
  972.                        first.
  973.  
  974. Hotkeys enabled....... Whether  the  hotkeys  are  enabled  or  not can be
  975.                        toggled by clicking on this gadget, or by using the
  976.                        `Exchange'    program    to   be   found   in   the
  977.                        `Tools/Commodities' drawer.
  978.  
  979. Load.................. Loads the hotkey settings from a file.
  980.  
  981. Save.................. Saves the hotkey settings to a file.
  982.  
  983. Use................... Use the current settings.
  984.  
  985. Cancel................ Keep the original settings.
  986.  
  987.    If  any  changes  made  here do not seem to take effect immediately, the
  988. user has probably typed a keyword wrong (causing the entire hotkey setup to
  989. fail).   I'm  sorry  about  this,  but the current implementation of hotkey
  990. support does not sport error checking.
  991.  
  992. c) Speech
  993. ---------
  994. If  enabled, the Amiga speech synthesizer will be used to alert the user of
  995. certain  actions, such as carrier lost, connection made, etc.  This feature
  996. makes  sense  if  `term' is running in the background where the user cannot
  997. see what is actually happening on the main screen.  By default this feature
  998. is disabled.
  999.  
  1000. Rate.................. Speaking speed in words per minute.
  1001.  
  1002. Pitch................. The  greater  this  value,  the  higher  the  voice
  1003.                        appears to speak.
  1004.  
  1005. Frequency............. Voice frequency in Hertz.
  1006.  
  1007. Volume................ The volume of the voice.
  1008.  
  1009. Sex................... Enabled female or male voice.
  1010.  
  1011. Speech enabled........ Toggles the activity of the speech synthesizer.
  1012.  
  1013. Speak!................ Speaks  a  small sample text, note that speech must
  1014.                        be enabled for this function to work.
  1015.  
  1016. Load.................. Loads the speech settings from a file.
  1017.  
  1018. Save.................. Saves the speech settings to a file.
  1019.  
  1020. Use................... Use the current settings.
  1021.  
  1022. Cancel................ Keep the original settings.
  1023.  
  1024.  
  1025. ===================== Telephone book & Dial function ======================
  1026. ===========================================================================
  1027. The  functions  described in the following can be found in the `Modem' menu
  1028. and relate to the menu entries `Phonebook', `Dial' and `Redial'.
  1029.    `term'  is  equipped  with  a  user friendly telephone number management
  1030. system,  the  `telephone book', which is operated via a Control field.  The
  1031. Control field is described in the following lines.
  1032.  
  1033. Name List.............. The  list  of  all  telephone  numbers  with  names
  1034.                         against  them  (name of the corresponding mailbox).
  1035.                         If  one  of these entries is selected with a double
  1036.                         click,  it will be placed at the end of the dialing
  1037.                         list (More on this later).
  1038.  
  1039. Name................... Name of the last selected telephone book entry.
  1040.  
  1041. Phone Number........... telephone  number  of  the  last selected telephone 
  1042.                         book entry.
  1043.  
  1044. Password............... Keyword  to  access the mailbox related to the last
  1045.                         selected telephone book entry.
  1046.  
  1047. Macro File............. Name  for  the file which contains the function key
  1048.                         definitions  for  the  last selected telephone book
  1049.                         entry.
  1050.  
  1051. Pay/Unit 1/2........... Cost for one pay unit.
  1052.  
  1053. Minutes/Unit 1/2....... Duration  of one pay unit in minutes. Together with
  1054.                         the  `Pay/Unit' entry the costs for a call are cal-
  1055.                         culated.
  1056.  
  1057. Start Time 1/2......... These  two  sliders  select  which  one  of the two
  1058.                         charge  rates  will  be used for which time of day.
  1059.                         In  Germany  the  6 minute units (DM 0,23 per unit)
  1060.                         start at 8:00 am and end at 6:00 pm.  The 12 minute
  1061.                         units  start  at  6:00  pm  and  end at 8:00 am the
  1062.                         following morning.
  1063.  
  1064. Serial,Modem,Screen,... These  functions communicate with the corresponding
  1065. Terminal,Startup,       functions in the `Preferences' menu and specify the
  1066. Paths,Transfer          settings  which are adopted as soon as a successful
  1067.                         connection  is made to one of the telephone numbers
  1068.                         which are stored in the telephone book.
  1069.  
  1070. Play Number............ Plays the currently selected telephone number using
  1071.                         touch-tone signal coding.
  1072.  
  1073. Dial................... Enters  the last selected telephone book entry into
  1074.                         the dialing  queue  and  jumps  immideatelly to the
  1075.                         dial function.
  1076.  
  1077. Get Settings........... Copies the actual terminal settings to the selected
  1078.                         telephone book entry.
  1079.  
  1080. New Entry.............. Generates  a new telephone book entry with standard
  1081.                         settings  and places it at the end of the telephone
  1082.                         book.
  1083.  
  1084. Remove Entry........... Removes the last selected telephone book entry from
  1085.                         the  telephone  book and frees the memory allocated
  1086.                         for this entry.
  1087.  
  1088. Load................... Loads the contents of a telephone book from a file.
  1089.  
  1090. Sort................... Sorts  the contents of the telephone book in ascen-
  1091.                         ding alphabetical order.
  1092.  
  1093. Save................... Saves the contents of a telephone book to a file.
  1094.  
  1095.    As  I have been asked several times:  For dialing a telephone number the
  1096. dialing  prefix  specified  for  this  telephone  number  is  used.  If the
  1097. MNP-error  correction for a certain mailbox has to be specifically switched
  1098. on  via the dial string, this has to be done in the modem settings for this
  1099. mailbox  and not in the global settings of `term'.  The `Modem Init-String'
  1100. and  `Modem Exit-String' entries of the telephone book can also be used for
  1101. initialisation.
  1102.    A further field is opened as soon as a telephone book entry is queued to
  1103. the  dialing  queue.   Either  the  name  of  the  telephone  book entry is
  1104. displayed,  or,  if it is a telephone number which has been entered via the
  1105. dial function, only the telephone number.
  1106.    The  following  input  elements  can  be found in the input field of the
  1107. dialing queue:
  1108.  
  1109. Dial................... Activates  the  dial  function and attempts to dial
  1110.                         each  of  the  dialing  queue entries one after the
  1111.                         other.
  1112.  
  1113. Delete Call............ Removes  an  entry  from the dialing queue.  If all
  1114.                         entries are removed the input field is closed.
  1115.  
  1116. Cancel................. Deletes  all  entries  from  the  dialing queue and
  1117.                         closes the input field.
  1118.  
  1119.    If  the  dial  function  is activated all input fields previously opened
  1120. will  be  closed,  a  new  input field is opened and the dialing process is
  1121. followed.    The  following  information  about  the  dialling  process  is
  1122. displayed:
  1123.  
  1124. Calling................ The  name  of the telephone book entry belonging to
  1125.                         the   number  being  dialled.   If  it  is  just  a
  1126.                         telephone     number     the     string    constant
  1127.                         `-- Unknown --'  is shown, meaning that the name of
  1128.                         the mailbox is unknown.
  1129.  
  1130. Number................. The telephone number being dialed or _just_ dialed.
  1131.  
  1132. Next................... The  name of the telephone book entry which will be
  1133.                         processed next if no connection is established.  If
  1134.                         no  further  entry  exists,  `--  None  --' will be
  1135.                         displayed.
  1136.  
  1137. Timeout................ A counter which is decreased every second and which
  1138.                         reflects   the   time   remaining  to  establish  a
  1139.                         connection  or  to  cycle  through  the  dial queue
  1140.                         again.
  1141.  
  1142. Attempt................ This  field shows the number of unsuccessful cycles
  1143.                         made  through  the  dialing  queue to  establish  a
  1144.                         connection.
  1145.  
  1146. Message................ A message to the user. This can be:
  1147.  
  1148.                         - Dialing...
  1149.  
  1150.                           A dial is in process.
  1151.  
  1152.                         - Line Is Busy.
  1153.  
  1154.                           The dialed number is engaged.
  1155.  
  1156.                         - Incoming Call!
  1157.  
  1158.                           The Modem has been called from another Modem.
  1159.  
  1160.                         - Incoming Voice Call!
  1161.  
  1162.                           The  Modem  is  receiving  a  call  which was not
  1163.                           originated by another Modem.
  1164.  
  1165.                         - Connection Established.
  1166.  
  1167.                           Nomen est omen!
  1168.  
  1169.                         - Maximum Number Of Dial Retries Reached!
  1170.  
  1171.                           Also nomen est omen.
  1172.  
  1173.                         - Dial Attempt Timeout.
  1174.  
  1175.                           The  time available to establish a connection has
  1176.                           been reached or exceeded.
  1177.  
  1178.                         - Redial Delay...
  1179.  
  1180.                           Pause  until  the  next cycle through the dialing
  1181.                           queue.
  1182.  
  1183.    Additionally  three  buttons  can  be  found  in  the input field, which
  1184. initiate the following functions.
  1185.  
  1186. Skip Call............... With  this function the current dialing attempt is
  1187.                          cancelled and the next number is processed.  If no
  1188.                          succeeding  telephone  number  exists `term' waits
  1189.                          for the next cycle through the dial queue or until
  1190.                          `Skip Call' is `pressed' again.
  1191.                             There also is a hotkey combination available to
  1192.                          accomplish the same effect.
  1193.  
  1194. Go To Online............ If  the  line  is  very noisy, the connection to a
  1195.                          mailbox has been made but the `CONNECT' signal has
  1196.                          been  lost,  you  can  use  this  button to switch
  1197.                          directly  to  the  online mode of the Modem.  This
  1198.                          will  also start the pay unit counter and the dial
  1199.                          queue will be exited.
  1200.  
  1201. Abort Dialing........... Operation  of  this  button  exits  the dial queue
  1202.                          (leaving  the  the dial queue intact) and ends the
  1203.                          dialing process.
  1204.  
  1205.    If a connection is successfully made the corresponding entry in the dial
  1206. queue will be removed.
  1207.  
  1208. ============================== The Log book ===============================
  1209. ===========================================================================
  1210. The  `Log  book'  is  a function which continually stores text displayed on
  1211. `term's  mainscreen, so that the user can inform himself about the received
  1212. text at any time .
  1213.  
  1214. 1. General characteristics
  1215. --------------------------
  1216. The  "size"  of the `log book' is managed dynamically so that for every new
  1217. line which is read new memory must be allocated.  So the "size" of the `log
  1218. book'  is  limited  only  by  the  amount  of  the available memory.  It is
  1219. recommended  that the `log book' is emptied periodically to avoid using the
  1220. entire free memory.
  1221.    If  there  is  insufficient  memory  to `write' a new line into the `log
  1222. book', the first line will be deleted to make room for the new line.
  1223.  
  1224. 2. Operation
  1225. ------------
  1226. The  contents  of  the  `log  book' can be paged through using the keys for
  1227. moving of the cursor (`Cursor keys') (cursor keys + shift key moves page by
  1228. page,  cursor  keys  + control key jumps to the beginning or end of the log
  1229. book).   Additionally,  the  numpad keys  are overlaid with jump and paging
  1230. functions  (corresponding  to the inscriptions/graphics on the front of the
  1231. keys).
  1232.    With  the  aid  of the mouse you can mark blocks in the `log book' which
  1233. are  to  be copied into the `clipboard' and which can later be fed into the
  1234. input stream with the function `Paste Clipboard Contents'.
  1235.    Additionally there is a further menu whose functions should be explained
  1236. briefly:
  1237.  
  1238. Search................. A search function is called which searches from the
  1239.                         topmost line ON THE SCREEN downwards for an entered
  1240.                         search string.  Upper-  and  lowercase  are ignored
  1241.                         with  this  function.
  1242.                         If  the  search string is found it is displayed and
  1243.                         marked/highlighted.
  1244.  
  1245. Repeat Search.......... Continues the search process started with `Search'.
  1246.                         The  previously  entered  search  string is carried
  1247.                         over.
  1248.  
  1249. Go To Main Screen...... Switches to the main screen of `term'.
  1250.  
  1251. Clear Buffer........... Clears the contents of the `log book'.
  1252.  
  1253. Close Buffer, Quit..... Closes  the  `log  book'  screen  but  leaves  the
  1254.                         contents unchanged.
  1255.  
  1256.  
  1257. ============================ Command sequences ============================
  1258. ===========================================================================
  1259. Each  character  string  sent  directly to the modem is a command sequence.
  1260. This includes telephone numbers, modem initialisation strings, function key
  1261. assignments,  etc.   In  addition  to  the  normal  ASCII character strings
  1262. various  other  commands  are  supported  which  will  be  described in the
  1263. following.
  1264.  
  1265. a) The `Backslash' (mirrored slash) \
  1266. -------------------------------------
  1267. The following sequences are introduced with the '\':
  1268.  
  1269. \\..... generates a single `Backslash'.
  1270.  
  1271. \b..... generates  a  `Backspace'  (delete the character to the left of the
  1272.         cursor).
  1273.  
  1274. \e..... generates the escape character (ASCII code 27).
  1275.  
  1276. \f..... generates  a  `Form Feed'  (skip  to  beginning of the next page or
  1277.         clear the screen).
  1278.  
  1279. \g..... places a character string into the `Clipboard'.
  1280.  
  1281. \n..... generates a `Line Feed'.
  1282.  
  1283. \p..... feeds  the  password  of  the  telephone  book entry into the input
  1284.         stream  of  the  last  made  connection.   Note:   The  password is
  1285.         automaticly  cleared  for  security  reasons when the connection is
  1286.         broken.
  1287.  
  1288. \r..... generates a `Carriage Return'.
  1289.  
  1290. \t..... generates a tab jump.
  1291.  
  1292. \x..... generates a break signal (as with the `Send Break' menu entry).
  1293.  
  1294. \d..... executes an AmigaDOS command.
  1295.  
  1296. \a..... executes an ARexx command.
  1297.  
  1298. \i..... feeds the contents of the `Clipboard' into the input stream.
  1299.  
  1300. \^..... generates a `circumflex' (also named roof :-).
  1301.  
  1302.    If  none of the mentioned combinations is recognized the character which
  1303. follows the '\' will be fed into the input stream without any changes.
  1304.  
  1305. b) The `circumflex' (also named roof :-) ^
  1306. ------------------------------------------
  1307. This  character  is  used  to  change the following character to a `control
  1308. character'.   So the sequence `^J' will become a Line feed and `^H' becomes
  1309. a  tab jump.  The character which follows the `^' has to be located between
  1310. `@' and `[', otherwise it is fed into the input stream without changes.
  1311.  
  1312. c) The Tilde ~
  1313. --------------
  1314. This character causes the program to pause for exactly half a second before
  1315. it continues to process the following commands.
  1316.  
  1317. =========================== The `Packet Window' ===========================
  1318. ===========================================================================
  1319. In  this  window  a  line  can  be edited before it is sent.  All the usual
  1320. editing  functions  known from standard input fields are available (shift +
  1321. left/right jumps to the start/end of the line).
  1322.    Additionally  some  extended  functions  exist  which  are  performed by
  1323. pressing a cursor key together with the shift or ctrl key:
  1324.  
  1325. left + ctrl............ jumps to the next word.
  1326. right + ctrl........... jumps to the previous word.
  1327.  
  1328. up..................... shows the last entered command in the input line.
  1329.  
  1330. up + shift............. shows the very first command entered so far.
  1331.  
  1332. down................... shows  the  next entered command (if you moved back
  1333.                         for some commands before).
  1334.  
  1335. down + shift........... shows the very last command entered so far.
  1336.  
  1337.    This  input field has a buffer where all previously entered commands are
  1338. stored  (`Command  History').   You  can page through this buffer, load and
  1339. save  it  and  individual  lines  can be called up again.  As with the `log
  1340. book'  this  buffer  is  managed dynamically.  The same memory restrictions
  1341. that apply to the `log book' are valid for this buffer.
  1342.    The input line also has a menu which offers the following functions:
  1343.  
  1344. Load History........... Loads the  contents of the input line buffer from a
  1345.                         file.   Each stored line in this file can be called
  1346.                         up and sent.
  1347.  
  1348. Save History........... Saves  the  contents  of the input line buffer to a
  1349.                         file.
  1350.  
  1351. Clear History.......... Simply  releases all previously stored commands and
  1352.                         the used memory.
  1353.  
  1354. Other Window........... Switches to the main screen of `term'.
  1355.  
  1356. Quit................... Closes  the  window  (corresponds  to  clicking the
  1357.                         close gadget of the window).
  1358.  
  1359.    It  must  be  mentioned that every character entered into this window is
  1360. shown immediately  so that those things where it is better that they should
  1361. not  appear  on the screen (like passwords for a mailbox) should be entered
  1362. in another way.
  1363.    The content of every input line is interpreted as a command sequence and
  1364. therefore can also contain control characters.
  1365.    If a line taken from the input buffer is sent without change it is _not_
  1366. stored in the buffer again (`true history' as known from `ConMan').
  1367.    The  contents  of  the  input buffer are cleared automatically after the
  1368. window is closed.  Under no circumstances are the contents maintained until
  1369. the next call!
  1370.  
  1371.  
  1372. ============================= System variables ============================
  1373. ===========================================================================
  1374. Information  which  is  to be available the next time the program is run is
  1375. placed  as  AmigaDOS  variables  in  the  directory `ENV:' and `ENVARC:' by
  1376. `term'.
  1377.    The  variables  used  by  `term'  can  be  used and manipulated by other
  1378. programs transparently. In detail these variables are:
  1379.  
  1380. TERMPATH............... The  name of the directory in which all information
  1381.                         used  by  `term' is placed (Standard configuration,
  1382.                         telephone  book,  etc.).   The  default  setting is
  1383.                         `ENVARC:term'.
  1384.  
  1385. TERMWINDOW............. The  window definition which can also be entered in
  1386.                         the  program  via  the  menu function  `Set Console
  1387.                         Window'.
  1388.  
  1389. xpr... ................ The  standard  settings  used for the corresponding
  1390.                         transfer protocol (xprzmodem, xprkermit, etc.).
  1391.  
  1392.  
  1393. ============== An author's request & gift-ware-remuneration ===============
  1394. ===========================================================================
  1395. The  development  of  `term'  required conciderable expense.  The effort to
  1396. find  out  by  trial and error and with a little help from the DevCon-Disks
  1397. and the Includes & Autodocs the operating principles of some routines would
  1398. alone  be  worth  a  remuneration to the author (its simply bad luck if the
  1399. Atlanta-DevCon records arrive with considerable delay).
  1400.    The  author is susceptible to all kinds of donation and gifts so long as
  1401. it  is  assured  that  they are useful to him (these nice little sacks with
  1402. elephant  food  are  better  sent  to  the Hannover zoo).  Therefore anyone
  1403. pleased  by  `term'  or  who  works  with  the  source  code  is welcome to
  1404. remunerate  my  programming  efforts  as  he/she  thinks that it matches my
  1405. efforts  (If  you've  got  no  ideas  yet:   I  am  looking for the GNU C++
  1406. objective  `C'  compiler  in a version executable on the Amiga, old Infocom
  1407. games or the source for LhArc or a Modula-2 compiler) - a lot of thanks!
  1408.  
  1409.                                 My address:
  1410.  
  1411.                         Olaf Barthel, MXM (ETG030)
  1412.                              Brabeckstrasse 35
  1413.                            D-W-3000 Hannover 71
  1414.  
  1415.                         Federal Republic of Germany
  1416.  
  1417.                          Z-Net: O.BARTHEL@A-Link-H
  1418.                    UUCP: o.barthel@a-link-h.zer.sub.org
  1419.  
  1420.    Would  those  people  looking at the source code to extend it or do some
  1421. modifications  here  and there please contact me before publication so that
  1422. our efforts can be coordinated.
  1423.    If  someone  should  have  a  brilliant  idea  to  improve or extend the
  1424. structure and contents of this manual, he/she may do it with my blessing (I
  1425. haven't had the enthusiasm up to now to TeXify the text).
  1426.  
  1427.  
  1428. ============================ Revision History =============================
  1429. ===========================================================================
  1430.  
  1431. V1.8a   First international release.
  1432.  
  1433. V1.0-   See german documentation (that's why its about 40KBytes longer).
  1434.  
  1435.                                      *
  1436.  
  1437.       "...you can't get what you want till you know what you want..."
  1438.  
  1439.                                                         -Joe Jackson
  1440.